package com.sunwayworld.basemodule.rm.equipment.equiptborrow.bean;

import com.alibaba.fastjson.annotation.JSONField;
import com.sunwayworld.framework.data.annotation.Id;
import com.sunwayworld.framework.data.annotation.NotNull;
import com.sunwayworld.framework.data.annotation.Table;
import com.sunwayworld.framework.data.annotation.Transient;
import com.sunwayworld.framework.support.domain.AbstractAuditable;
import com.sunwayworld.framework.support.domain.Auditable;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

/**
 * 设备借用管理
 * 
 * @author gaozq@sunwayworld.com
 * @date 2023-06-30
 */
@Table("T_LIMS_EQUIPT_BORROW")
public class LimsEquiptBorrowBean extends AbstractAuditable<Long> implements Auditable<Long> {

    @Transient
    private static final long serialVersionUID = -82566196618711043L;

    @Id
    private Long id;// 主键
    private Long equiptReturnId;// 设备归还ID，已有归还ID不可再次被归还申请选择
    private Long equiptId;// 设备id
    private String equiptCode;// 设备编号
    private String equiptName;// 设备名称
    private String orgId;// 所属部门id
    private String orgName;// 所属部门
    private String laboratory;// 所属实验室
    private String laboratoryId;// 所属实验室id
    private String testGroup;// 所属测试组
    private String testGroupId;// 测试组id
    private String borrowPlace;// 借用地点
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime borrowTime;// 借用时间
    private String borrowReason;// 借用原因
    private String borrowOrg;// 借用部门
    private String borrowOrgId;// 借用部门id
    private String borrowLab;// 借用实验室
    private String borrowLabId;// 借用实验室id
    private String borrowTestGroup;// 借用测试组
    private String borrowTestGroupId;// 借用测试组id
    private String createdById;// 制单人编码
    private String createdByName;// 制单人名称
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdTime;// 制单时间
    private String createdByOrgId;// 制单人单位编码
    private String createdByOrgName;// 制单人单位名称
    @NotNull(defaultValue = "draft")
    private String processStatus;// 流程状态

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
    public Long getEquiptReturnId() {
        return equiptReturnId;
    }

    public void setEquiptReturnId(Long equiptReturnId) {
        this.equiptReturnId = equiptReturnId;
    }
    public Long getEquiptId() {
        return equiptId;
    }

    public void setEquiptId(Long equiptId) {
        this.equiptId = equiptId;
    }

    public String getEquiptCode() {
        return equiptCode;
    }

    public void setEquiptCode(String equiptCode) {
        this.equiptCode = equiptCode;
    }

    public String getEquiptName() {
        return equiptName;
    }

    public void setEquiptName(String equiptName) {
        this.equiptName = equiptName;
    }

    public String getOrgId() {
        return orgId;
    }

    public void setOrgId(String orgId) {
        this.orgId = orgId;
    }

    public String getOrgName() {
        return orgName;
    }

    public void setOrgName(String orgName) {
        this.orgName = orgName;
    }

    public String getLaboratory() {
        return laboratory;
    }

    public void setLaboratory(String laboratory) {
        this.laboratory = laboratory;
    }

    public String getLaboratoryId() {
        return laboratoryId;
    }

    public void setLaboratoryId(String laboratoryId) {
        this.laboratoryId = laboratoryId;
    }

    public String getTestGroup() {
        return testGroup;
    }

    public void setTestGroup(String testGroup) {
        this.testGroup = testGroup;
    }

    public String getTestGroupId() {
        return testGroupId;
    }

    public void setTestGroupId(String testGroupId) {
        this.testGroupId = testGroupId;
    }

    public String getBorrowPlace() {
        return borrowPlace;
    }

    public void setBorrowPlace(String borrowPlace) {
        this.borrowPlace = borrowPlace;
    }

    public LocalDateTime getBorrowTime() {
        return borrowTime;
    }

    public void setBorrowTime(LocalDateTime borrowTime) {
        this.borrowTime = borrowTime;
    }

    public String getBorrowReason() {
        return borrowReason;
    }

    public void setBorrowReason(String borrowReason) {
        this.borrowReason = borrowReason;
    }

    public String getBorrowOrg() {
        return borrowOrg;
    }

    public void setBorrowOrg(String borrowOrg) {
        this.borrowOrg = borrowOrg;
    }

    public String getBorrowOrgId() {
        return borrowOrgId;
    }

    public void setBorrowOrgId(String borrowOrgId) {
        this.borrowOrgId = borrowOrgId;
    }

    public String getBorrowLab() {
        return borrowLab;
    }

    public void setBorrowLab(String borrowLab) {
        this.borrowLab = borrowLab;
    }

    public String getBorrowLabId() {
        return borrowLabId;
    }

    public void setBorrowLabId(String borrowLabId) {
        this.borrowLabId = borrowLabId;
    }

    public String getBorrowTestGroup() {
        return borrowTestGroup;
    }

    public void setBorrowTestGroup(String borrowTestGroup) {
        this.borrowTestGroup = borrowTestGroup;
    }

    public String getBorrowTestGroupId() {
        return borrowTestGroupId;
    }

    public void setBorrowTestGroupId(String borrowTestGroupId) {
        this.borrowTestGroupId = borrowTestGroupId;
    }

    public String getCreatedById() {
        return createdById;
    }

    public void setCreatedById(String createdById) {
        this.createdById = createdById;
    }

    public String getCreatedByName() {
        return createdByName;
    }

    public void setCreatedByName(String createdByName) {
        this.createdByName = createdByName;
    }

    public LocalDateTime getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(LocalDateTime createdTime) {
        this.createdTime = createdTime;
    }

    public String getCreatedByOrgId() {
        return createdByOrgId;
    }

    public void setCreatedByOrgId(String createdByOrgId) {
        this.createdByOrgId = createdByOrgId;
    }

    public String getCreatedByOrgName() {
        return createdByOrgName;
    }

    public void setCreatedByOrgName(String createdByOrgName) {
        this.createdByOrgName = createdByOrgName;
    }

    public String getProcessStatus() {
        return processStatus;
    }

    public void setProcessStatus(String processStatus) {
        this.processStatus = processStatus;
    }

}
